iT邦幫忙

2023 iThome 鐵人賽

DAY 17
0
Odoo

Odoo 魔法學院: 一步一腳印帶你成為客製化大師系列 第 17

[Day17] 使用SQL來檢查資料正確性+ odoo base models

  • 分享至 

  • xImage
  •  

我們會使用SQL來檢查資料的正確性,以書本來說:

  • 相同書名跟出版日期不應該重複出現
  • 發布日期不應該大於當前日期

在library_app/models/library_book.py加入:

_sql_constraints = [

        ("library_book_name_date_uq","UNIQUE (name, date_published)","Title and publication date must be unique."),

        ("library_book_check_date","CHECK (date_published <= current_date)","Publication date must not be in the future."),
    ]

_sql_constraints 格式為(name, sql, message)
name 是該識別碼的名稱
sql SQL的語法 (UNIQUE CHECK)
message 在發生錯誤時向使用者呈現錯誤訊息

odoo的base models

前面我們也有創建新的model,也有使用odoo模組所提供的models,這也分成兩種類型:

  • Information repository, ir.*
    用於儲存odoo框架所需的基本數據,例如Menus, Views, Models,and Actions
    ex:
    ir.actions.act_window for Windows Action
    ir.config_parameter for global configuration options
    ir.ui.menu for Menu Items

  • Resources, res.*
    可供任何module使用的基本資料
    ex:
    res.partner 代表業務合作夥伴,例如客戶和供應商,以及地址
    res.company 用於公司數據
    res.groups 用於應用程式安全性群組


上一篇
[Day16] 書與出版社的關聯:One-to-Many, Many-to-One
下一篇
[Day18] 書本租借功能擴充:訂單資訊
系列文
Odoo 魔法學院: 一步一腳印帶你成為客製化大師30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言